<?

//Initiate Authenticate
SecurityRedirect ();

//initiate Vars
define("PRIMARY_KEY","nobkt");
$PRIMARY_KEY    = PRIMARY_KEY;
$PRIMARY_VALUE  = GetParam($PRIMARY_KEY,"");
$FileName       = "ais_transaction_cashbankpayment.php";
$FileTemplate   = "ais_transaction_cashbankpayment_form.html";
$SubHeaderTitle = "Transaction Cash/Bank - Payment";
$TableName      = "ais_memorial";
$HTMLFormName   = "MemorialTransForm";
$MaxGrid        = "100";
$KTRASL                        = GetOfficeID();
//$HTMLFormName2  = "BudgetForm";

$FormAction    = $FileName . "?" . AddParam(GetQueryString("QueryString", ""),"form","$HTMLFormName");
$FormEncType   = "application/x-www-form-urlencoded";
//$PMode         = "";

//Initiate Grid Fields;
$FormFields    = array("uraian"=>"0",
                                           "urut"=>"",
                                           "skada"=>"",
                                           "jumlah"=>"number",
                                           "dk"=>"","noorder"=>"","kdact"=>"",
                                           "noref"=>"",
                                           "memorial_id"=>"");

//buildsqlfield ("$TableName", $FormFields);

//Leave Here Untouch
$FormCName     = BuildHTMLField($FormFields,"name",1);
$FormCValue    = BuildHTMLField($FormFields,"value",1);
$nobkt                                  = GetParam("nobkt","");

//************ FORM ACTION **************
if (trim(GetParam("form",""))==trim($HTMLFormName)) {
        if (GetParam("FormAction","")=="Save") {
                list($FDay,$FMonth,$FYear) = explode("/",GetParam("tglbkt",""));
                $tglbkt = "$FYear-$FMonth-$FDay";
                $rate    = StrToNumber (GetParam("rate",""));

                if (trim(GetParam("nobkt",""))=="AUTO NUMBERED BY SYSTEM")        {
                        if (GetParam("type","")=="Bank") {
                                $ObjNumber  = new autonumber(GetParam("tglbkt",""),GetParam("kdbank",""));
                                $TransNo = $ObjNumber->GetNumber("ZBB");
                        } else {
                                $ObjNumber  = new autonumber(GetParam("tglbkt",""),GetParam("kdcash",""));
                                $TransNo = $ObjNumber->GetNumber("ZBK");
                        }



                        FormSave("ais_memorial_z", "jumlah", $FormFields, array("ledger"=>GetPeriod(GetParam("tglbkt","")),"curr"=>GetParam("curr",""),"debtur"=>GetParam("debtur",""),"debnam"=>GetParam("debnam",""),"rate"=>$rate,"tglbkt"=>$tglbkt,"nobkt"=>$TransNo,"ktrasl"=>GetOfficeID(),"status"=>GetParam("status",""),"source"=>GetParam("source",""),"kdbank"=>GetParam("kdbank","")),"memorial_id");

                        $SQL = "SELECT SUM(ais_memorial_z.rupiah) FROM ais_memorial_z WHERE nobkt='$TransNo' and urut <> 999";
                        $Rupiah = $DBConnection->dbc->get_var($SQL);

                        $DBConnection->add_data("ais_memorial_z","source",GetParam("source",""));
                        $DBConnection->add_data("ais_memorial_z","urut","999");
                        $DBConnection->add_data("ais_memorial_z","ktrasl",GetOfficeID());

                        if (GetParam("type","")=="Bank") $DBConnection->add_data("ais_memorial","kdbank",GetParam("kdbank",""));
                        else $DBConnection->add_data("ais_memorial_z","kdcash",GetParam("kdcash",""));




                        $DBConnection->add_data("ais_memorial_z","ledger",GetPeriod(GetParam("tglbkt","")));
                        $DBConnection->add_data("ais_memorial_z","curr",GetParam("curr",""));
                        $DBConnection->add_data("ais_memorial_z","kdact",GetParam("kdact999",""));
                        $DBConnection->add_data("ais_memorial_z","app1",GetParam("app1",""));
                        $DBConnection->add_data("ais_memorial_z","app2",GetParam("app2",""));
                        $DBConnection->add_data("ais_memorial_z","nmapp1",GetParam("nmapp1",""));
                        $DBConnection->add_data("ais_memorial_z","nmapp2",GetParam("nmapp2",""));
                        $DBConnection->add_data("ais_memorial_z","rate",$rate);
                        $DBConnection->add_data("ais_memorial_z","nobkt",$TransNo);
                        $DBConnection->add_data("ais_memorial_z","tglbkt",$tglbkt);
                        $DBConnection->add_data("ais_memorial_z","dk",GetParam("dk999",""));
                        $DBConnection->add_data("ais_memorial_z","noorder",GetParam("noorder999",""));
                        $DBConnection->add_data("ais_memorial_z","debtur",GetParam("debtur",""));
                        $DBConnection->add_data("ais_memorial_z","debnam",GetParam("debnam",""));
                        $DBConnection->add_data("ais_memorial_z","skada",GetParam("skada999",""));
                        $DBConnection->add_data("ais_memorial_z","uraian",GetParam("uraian999",""));
                        $DBConnection->add_data("ais_memorial_z","jumlah",StrToNumber(GetParam("total_trans","")));

                        //$DBConnection->add_data("ais_memorial_z","rupiah",StrToNumber(GetParam("total_trans","")) * $rate);
                        $DBConnection->add_data("ais_memorial_z","rupiah",$Rupiah);

                        $DBConnection->add_data("ais_memorial_z","noref",GetParam("noref999",""));
                        $DBConnection->add_data("ais_memorial_z","status",GetParam("status",""));
                        $DBConnection->InsertGrid();

                        $DBConnection->dbc->query("UPDATE ais_memorial_history SET memo_jour='".$TransNo."', jml_memo='".StrToNumber(GetParam("total_trans",""))."' WHERE memoesti='".GetParam("aslref","")."' AND ktrasl='".GetOfficeID()."'");
                        SetLogActivity($TransNo,"Create","");

            } else {
                $TransNo = GetParam("nobkt","");
                $SQL = "SELECT kdcash FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
                $kdcash = $DBConnection->dbc->get_var($SQL);
                $SQL = "SELECT kdbank FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
                $kdbank = $DBConnection->dbc->get_var($SQL);
                $SQL = "SELECT  jumlah FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
                $jumlah = $DBConnection->dbc->get_var($SQL);

                if (ereg("BB",$TransNo)) {
                    $SQL = "UPDATE tblbank SET balance=balance+".$jumlah." WHERE kdbank='".$kdbank."'";
                } else {
                    $SQL = "UPDATE tblcash SET balance=balance+".$jumlah." WHERE kdcash='".$kdcash."'";
                }
                $DBConnection->dbc->query($SQL);

                $DBConnection->dbc->query("DELETE FROM ais_memorial WHERE nobkt='".$TransNo."' AND ktrasl='".GetOfficeID()."'");
                $DBConnection->dbc->query("DELETE FROM ais_hutang WHERE nobkt='".$TransNo."' AND ktrasl='".GetOfficeID()."'");
                $DBConnection->dbc->query("DELETE FROM ais_piutang WHERE nobkt='".$TransNo."' AND ktrasl='".GetOfficeID()."'");
                FormSave("ais_memorial", "jumlah", $FormFields, array("ledger"=>GetPeriod(GetParam("tglbkt","")),"curr"=>GetParam("curr",""),"debtur"=>GetParam("debtur",""),"debnam"=>GetParam("debnam",""),"rate"=>$rate,"tglbkt"=>$tglbkt,"nobkt"=>$TransNo,"ktrasl"=>GetOfficeID(),"status"=>GetParam("status",""),"source"=>GetParam("source",""),"kdbank"=>GetParam("kdbank",""),"kdcash"=>GetParam("kdcash",""),"app1"=>GetParam("app1",""),"nmapp1"=>GetParam("nmapp1",""),"app2"=>GetParam("app2",""),"nmapp2"=>GetParam("nmapp2",""),"duedate"=>GetParam("duedate",""),"nocek"=>GetParam("nocek",""),"payby"=>GetParam("payby","")),"memorial_id");


                $SQL = "SELECT SUM(ais_memorial.rupiah) FROM ais_memorial WHERE nobkt='$TransNo' and urut <> 999";
                $Rupiah = $DBConnection->dbc->get_var($SQL);

                $DBConnection->add_data("ais_memorial","source",GetParam("source",""));
                $DBConnection->add_data("ais_memorial","urut","999");
                $DBConnection->add_data("ais_memorial","ktrasl",GetOfficeID());
                $DBConnection->add_data("ais_memorial","kdbank",GetParam("kdbank",""));
                $DBConnection->add_data("ais_memorial","kdcash",GetParam("kdcash",""));
                $DBConnection->add_data("ais_memorial","ledger",GetPeriod(GetParam("tglbkt","")));
                $DBConnection->add_data("ais_memorial","curr",GetParam("curr",""));
                $DBConnection->add_data("ais_memorial","kdact",GetParam("kdact999",""));
                $DBConnection->add_data("ais_memorial","app1",GetParam("app1",""));
                $DBConnection->add_data("ais_memorial","app2",GetParam("app2",""));
                $DBConnection->add_data("ais_memorial","nmapp1",GetParam("nmapp1",""));
                $DBConnection->add_data("ais_memorial","nmapp2",GetParam("nmapp2",""));

                $DBConnection->add_data("ais_memorial","rate",$rate);
                $DBConnection->add_data("ais_memorial","nobkt",$TransNo);
                $DBConnection->add_data("ais_memorial","tglbkt",$tglbkt);
                $DBConnection->add_data("ais_memorial","dk",GetParam("dk999",""));
                $DBConnection->add_data("ais_memorial","noorder",GetParam("noorder999",""));
                $DBConnection->add_data("ais_memorial","debtur",GetParam("debtur",""));
                $DBConnection->add_data("ais_memorial","debnam",GetParam("debnam",""));
                $DBConnection->add_data("ais_memorial","skada",GetParam("skada999",""));
                $DBConnection->add_data("ais_memorial","uraian",GetParam("uraian999",""));
                $DBConnection->add_data("ais_memorial","jumlah",StrToNumber(GetParam("total_trans","")));

                //$DBConnection->add_data("ais_memorial","rupiah",StrToNumber(GetParam("total_trans","")) * $rate);
                $DBConnection->add_data("ais_memorial","rupiah",$Rupiah);

                $DBConnection->add_data("ais_memorial","noref",GetParam("noref999",""));
                $DBConnection->add_data("ais_memorial","status",GetParam("status",""));
                $DBConnection->InsertGrid();

                if (ereg("BB",$TransNo)) {
                    $SQL = "UPDATE tblbank SET balance=balance-".StrToNumber(GetParam("total_trans",""))." WHERE kdbank='".GetParam("kdbank","")."'";
                } else {
                    $SQL = "UPDATE tblcash SET balance=balance-".StrToNumber(GetParam("total_trans",""))." WHERE kdcash='".GetParam("kdcash","")."'";
                }
                $DBConnection->dbc->query($SQL);

                $DBConnection->dbc->query("UPDATE ais_memorial_history SET memo_jour='".$TransNo."', jml_memo='".StrToNumber(GetParam("total_trans",""))."' WHERE memoesti='".GetParam("aslref","")."' AND ktrasl='".GetOfficeID()."'");
                SaveAging ($TransNo);
                SetLogActivity($TransNo,"Update","");
            }


                //DeleteRecord ("txtCheck",$MaxGrid);
                header("Location: $FileName?PageMode=Form&".PRIMARY_KEY."=".$TransNo."&ttype=".GetParam("type",""));
                exit;
        }
        if (GetParam("FormAction","")=="Delete") {
//                print "Deleted"."<br>\n";
                //DeleteRecord ("txtCheck",$MaxGrid);
                DeleteTrans(GetParam("nobkt",""));
                SetLogActivity($TransNo,"Delete","");
                header("Location: $FileName?");
        }
}

//Field Verification
$Verification  = "False";
$SessionVar    = md5(microtime());
//$SessionVar    = "Stuck";
$VerifyFields = array(
                                          "source"=>"Source",
                                          "nobkt"=>"ID No.",
                                          "tglbkt"=>"Transaction Date",
                                          "curr"=>"Currency",
                                          "skada1"=>"Skada On Line 1",
                                          "uraian1"=>"Uraian On Line 1",
                                          "uraian999"=>"Uraian On Line 999",
                                          "kdact999"=>"Activity Code On Line 999",
                                          "noref999"=>"Ref On Line 999"
                                          );
VerifyHTML ($HTMLFormName,$VerifyFields,$SessionVar,array("debtur"=>"Debtur"));

//modified by dyah. 27 july 2009
$PERIOD_OPENED = 1;
if (GetParam(PRIMARY_KEY,"")) {
        $SQLCount     = "SELECT count(*) FROM `$TableName`";
        $SQLCount    .= "WHERE ".PRIMARY_KEY."='".$PRIMARY_VALUE."' AND urut<>999";
        $Count        = $DBConnection->dbc->get_var($SQLCount);

        $CheckPeriodQuery = "SELECT tglbkt FROM `$TableName`";
        $CheckPeriodQuery .= "WHERE ".PRIMARY_KEY."='".$PRIMARY_VALUE."'";
        $TglTrans = $DBConnection->dbc->get_var($CheckPeriodQuery);
        $PERIOD_OPENED = CheckPeriod($TglTrans);
} else
        $Count=0;

$NewDataStart = $Count + 1;
//$NewDataStart = 1;
$InitFunction = "Masking();Masking2();";

$VerifyGrids = array("uraian"=>"0","jumlah"=>"number","skada"=>"0","dk"=>"");
$Masking1 = BuildMasking ($HTMLFormName,MutatorFields($FormFields,($MaxGrid+$Count)));
$Masking2 = BuildMasking ($HTMLFormName,array("tglbkt"=>"date","rate"=>"number"),"2");
$JSMasks  = $Masking1.$Masking2;

Init($SessionVar,$JSMasks);
FormGridHTML ($HTMLFormName,$VerifyGrids,$Count,$MaxGrid,$SessionVar);

//************ SET FORM MODE ***************
if (GetParam(PRIMARY_KEY,"")) {
  $FormMode = "Edit";
  $USER_CANPRINT="1";
  //if (!isApproved(GetParam("nobkt",""))) $USER_CANPRINT="";
  //else $USER_CANPRINT="1";
} else {
  $FormMode = "Add";
  $USER_CANPRINT="";
}

//******* DATABASE GRID QUERY ***********

$SQL = "SELECT ".BuildFields($FormFields)." FROM `$TableName`";
if (GetParam(PRIMARY_KEY,"") && $FormMode="Edit") {
    $SQL      = $SQL."WHERE ".PRIMARY_KEY." ='".GetParam(PRIMARY_KEY,"")."'";
    $SQL     .= " AND ktrasl='".GetOfficeID()."'";
    $SQLGrid  = $SQL." ORDER BY ".PRIMARY_KEY;
}


//******* SHOW FORM CONTENT *********
$TBS = new clsTinyButStrong ;
$TBS->LoadTemplate($MOD_TEMPLATE_DIR."/".$FileTemplate);

//********************************* HTML Header ******************************************
//Select Currency Table
$SQLCurr = "SELECT * FROM tblcurrency";
//Select Department:
$SQLDept = "SELECT * FROM tbldept";
//Select Receipt:
$SQLReceipt = "SELECT * FROM tblreceipt";
//Select Bank:
$SQLBank = "SELECT * FROM tblbank ORDER BY banknam";
//Select Cash:
$SQLCash = "SELECT * FROM tblcash ORDER BY cashnam";
//Select Activity
$SQLAct  = "SELECT  * FROM tblactivity ORDER BY actname";

$HeaderFields = array("source"=>"",
                                          "nobkt"=>"0",
                                          "tglbkt"=>"date",
                                          "curr"=>"",
                                          "rate"=>"number",
                                          "debtur"=>"",
                                          "debnam"=>"",
                                          "kdcash"=>"",
                                          "kdbank"=>"",
            "app1"=>"",
            "app2"=>"",
            "nmapp1"=>"",
            "nmapp2"=>""
            );
//Leave Here Untouch
$FormHName     = BuildHTMLField($HeaderFields,"name",1);
$FormHValue    = BuildHTMLField($HeaderFields,"value",1);
$SQLHeader     = "SELECT ".BuildFields($HeaderFields)." FROM $TableName ";

if (GetParam(PRIMARY_KEY,"") && $FormMode="Edit") $SQLHeader .= "WHERE ".PRIMARY_KEY."='".GetParam(PRIMARY_KEY,"")."' AND ktrasl='".GetOfficeID()."'";
$TBS->MergeBlock("deptblk",$DBMysql,$SQLDept);
$TBS->MergeBlock("bankblk",$DBMysql,$SQLBank);

if (GetParam("ttype","")) $ttype = GetParam("ttype","");
elseif (GetParam("nobkt","")) {
        $SQL = "SELECT IF(ifnull(kdcash,'')='','Bank','Cash') FROM ais_memorial WHERE ".PRIMARY_KEY."='".GetParam(PRIMARY_KEY,"")."' AND urut=999 ";
        $ttype = $DBConnection->dbc->get_var($SQL);
} else $ttype = "Bank";
$TBS->MergeBlock("cashblk",$DBMysql,$SQLCash);
$TBS->MergeBlock("currformblk",$DBMysql,$SQLCurr);
$TBS->MergeBlock("receiptblk",$DBMysql,$SQLReceipt);
$TBS->MergeBlock("actblk",$DBMysql,$SQLAct);
$TBS->MergeBlock("actblk9",$DBMysql,$SQLAct);

//Total 999 Values
/*
$Fields9       = array("noref999"=>"0","jumlah999"=>"number","skada999"=>"0","untush999"=>"0");
$Form9Value    = BuildHTMLField($Fields9,"value",1);
*/

$SQL999 = "SELECT * FROM ais_memorial "."WHERE ".PRIMARY_KEY." ='".GetParam(PRIMARY_KEY,"")."' AND ktrasl='".GetOfficeID()."' ";
$SQL999 = $SQL999." AND urut = 999";

$TBS->MergeBlock("dept999blk",$DBMysql,$SQLDept);
if (GetParam(PRIMARY_KEY,"")) {$TBS->MergeBlock("blg9",$DBMysql,$SQL999);}
else $TBS->MergeBlock("blg9",$FormCValue);

// HTML Value
$TBS->MergeBlock("headbln",$FormHName);
if (GetParam(PRIMARY_KEY,"")) {$TBS->MergeBlock("headblv",$DBMysql,$SQLHeader);}
else $TBS->MergeBlock("headblv",$FormHValue);

//********************************* HTML GRID *********************************************
//HTML Grid
$SQLGrid = "SELECT * FROM ais_memorial "."WHERE ".PRIMARY_KEY." ='".GetParam(PRIMARY_KEY,"")."' AND ktrasl='".GetOfficeID()."' AND urut<>999";
//print $SQLGrid;
$Result  = $DBConnection->dbc->get_results($SQLGrid,ARRAY_A);
$Result  = BuildEmptyGrid ($FormFields, $MaxGrid, $Result);

//$Result  = BuildEmptyGrid ($FormFields, $MaxGrid, $Result);

$TBS->MergeBlock("blg",$Result);
$TBS->Show();


//*************** ACTION FUNCTION *******************
function isApproved($nobkt) {
        global $DBConnection;
        $SQL = "SELECT app2 FROM ais_memorial WHERE nobkt='$nobkt'";
        return $DBConnection->dbc->get_var($SQL);
}

function FormInsert() {
        global $DBConnection,$FileName;
        $DBConnection->Insert();
        header("Location: $FileName?PageMode=Form");
        exit;
}

function FormUpdate() {
        global $DBConnection;
        $DBConnection->Update();
}

function FormDelete() {
        global $DBConnection,$FileName,$TableName;
        $DBConnection->deleteGrid("$TableName","nobkt");
        header("Location: $FileName");
        exit;
}

function FormSearch () {

}

function FormCancel () {
        global $FileName;
        header("Location: ".$FileName);
        exit;
}

function DeleteTrans($nobkt) {
        global $DBConnection;
        $TransNo = $nobkt;
        $SQL = "SELECT kdcash FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
        $kdcash = $DBConnection->dbc->get_var($SQL);
        $SQL = "SELECT kdbank FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
        $kdbank = $DBConnection->dbc->get_var($SQL);
        $SQL = "SELECT  jumlah FROM ais_memorial WHERE nobkt='".$TransNo."' AND urut=999 ";
        $jumlah = $DBConnection->dbc->get_var($SQL);

        if (ereg("BB",$TransNo)) {
            $SQL = "UPDATE tblbank SET balance=balance+".$jumlah." WHERE kdbank='".$kdbank."'";
        } else {
            $SQL = "UPDATE tblcash SET balance=balance+".$jumlah." WHERE kdcash='".$kdcash."'";
        }
        $DBConnection->dbc->query($SQL);
        $SQL = "DELETE FROM  ais_memorial WHERE nobkt='".GetParam("nobkt","")."'";
        $DBConnection->dbc->query($SQL);
        $SQL = "DELETE FROM  ais_piutang WHERE nobkt='".GetParam("nobkt","")."'";
        $DBConnection->dbc->query($SQL);
        $SQL = "DELETE FROM  ais_hutang WHERE nobkt='".GetParam("nobkt","")."'";
        $DBConnection->dbc->query($SQL);

}


function FormSaveHutang ($table, $keyField, $FormFields, $SpecialCase="", $PrimaryKey) {
        global $FileName, $MaxGrid, $DBConnection;
        $TotalData = $MaxGrid * 2;
        $NewDataStart = GetParam("NewData","0");
//        $NewDataStart = 1;
        for ($a=1;$a<=$TotalData;$a++) {
                foreach ($FormFields as $key=>$formatting) {
                        if (!GetParam($keyField.$a,"")) {
                                $EndOfData = 1;
                                break;
                        }
                        $value = GetParam($key.$a,"");
                        if ($formatting=="number") $value = str_replace(",","",$value);
                        if ($formatting=="date") {
                                list($day,$month,$year) = explode("/",$value);
                                $value = "$year-$month-$day";
                    }
                        $DBConnection->add_data($table,$key,$value);
                }
                $rate = StrToNumber(GetParam("rate",""));
                $jmh  = StrToNumber(GetParam("jumlah".$a,""));
                $rupiah = $rate * $jmh;
                $DBConnection->add_data($table,"rupiah",$rupiah);
                $DBConnection->add_data($table,"rupiah",$rupiah);
                if ($EndOfData) {
                        break;
            }
                if (!empty($SpecialCase)) {
                        foreach ($SpecialCase as $key => $value) {
                        //        print "add_data($table,$key,$value);<br>";
                                $DBConnection->add_data($table,$key,$value);
                        }
                }
//                print "$a < $NewDataStart<br>";
                if ($a < $NewDataStart) {
                         if (strlen($PrimaryKey)) {
                            $DBConnection->UpdateGrid($PrimaryKey,GetParam($PrimaryKey.$a,""));
                          } else {
                            $DBConnection->UpdateGrid($keyField,GetParam($keyField.$a,""));
                     }
                } else {
                        $DBConnection->InsertGrid();
            }
        }
        $DBConnection->clearData();
}


function FormSave ($table, $keyField, $FormFields, $SpecialCase="", $PrimaryKey) {
        global $FileName, $MaxGrid, $DBConnection;
        $TotalData = $MaxGrid * 2;
        $NewDataStart = GetParam("NewData","0");
        $NewDataStart = 1;
        for ($a=1;$a<=$TotalData;$a++) {
                foreach ($FormFields as $key=>$formatting) {
                        if (!GetParam($keyField.$a,"")) {
                                $EndOfData = 1;
                                break;
                        }
                        $value = GetParam($key.$a,"");
                        if ($formatting=="number") $value = str_replace(",","",$value);
                        if ($formatting=="date") {
                                list($day,$month,$year) = explode("/",$value);
                                $value = "$year-$month-$day";
                    }
                        $DBConnection->add_data($table,$key,$value);
                }
                $rate = StrToNumber(GetParam("rate",""));
                $jmh  = StrToNumber(GetParam("jumlah".$a,""));
                $rupiah = $rate * $jmh;
                $DBConnection->add_data($table,"rupiah",$rupiah);
                if ($EndOfData) {
                        break;
            }
                if (!empty($SpecialCase)) {
                        foreach ($SpecialCase as $key => $value) {
                        //        print "add_data($table,$key,$value);<br>";
                                $DBConnection->add_data($table,$key,$value);
                        }
                }
//                print "$a < $NewDataStart<br>";
                if ($a < $NewDataStart) {
                         if (strlen($PrimaryKey)) {
                            $DBConnection->UpdateGrid($PrimaryKey,GetParam($PrimaryKey.$a,""));
                          } else {
                            $DBConnection->UpdateGrid($keyField,GetParam($keyField.$a,""));
                     }
                } else {
                        $DBConnection->InsertGrid();
            }
        }
        $DBConnection->clearData();
}
//*************** USER FUNCTION *******************
function buildsqlfield ($table, $arrayfield) {
                global $DBConnection;
                for ($x=0;$x<count($arrayfield);$x++) {
                        $DBConnection->add_htmlfield($table,$arrayfield[$x],GetParam($arrayfield[$x],""));
                }
}

function DeleteRecord ($sequence_name,$PageSize) {
        global $DBConnection,$FileName,$TableName;
        for ($x=1;$x<=$PageSize;$x++) {
                if (GetParam($sequence_name.$x,""))        {
                        $DBConnection->deleteGrid("$TableName","receipt_id",$sequence_name.$x);
            }
        }
}

function BuildFields ($FormFields) {
                global $DBConnection;
                $str = "";
                foreach ($FormFields as $key=>$formatting) {
                        if (strlen($str)) $str .= ",$key";
                        else $str = "$key";
                }
                return $str;
}

function MutatorFields ($FormFields, $MaxGrid) {
                global $DBConnection;
                $array_fields = array();
                for ($x=0;$x<$MaxGrid;$x++) {
                        foreach ($FormFields as $key=>$formatting){
                                $a=$x+1;
                                $array_fields[$key.$a] = "$formatting";
                        }
                }
                return $array_fields;
}
?>
